Component({
    options: {
        multipleSlots: true,
        addGlobalClass: true,
    },
    data: {
        result:'-'
    },
    properties:{
        fix:{
            type:Number,
            value:2
        },
        value:{
            type:Number,
            value:0
        },
        split:{
            type:Boolean,
            value:false
        }
    },
    observers: {
        'value': function() {
            this.reset()
        }
    },
    methods:{
        reset(){
            let value = this.data.value||0,
                fix = this.data.fix,
                split = this.data.split||false;
            var v = Math.round(value*Math.pow(10,fix))/Math.pow(10,fix)+'',
                nar = v.split('.');

            if(split){
                var len = nar[0].length,
                    maxgp = Math.ceil(len/3),
                    list = nar[0].split(''),
                    ngp = [];

                for(var i=0;i<maxgp;i++){
                    var gv = list.splice(-3,3);
                    ngp.push(gv.join(''));
                };
                ngp.reverse();
                nar[0] = ngp.join(',');
            }

            if(fix){
                nar[1] = nar[1]||'';
                if(nar[1].length!=fix){
                    nar[1] = nar[1]+new Array(fix+1-nar[1].length).join('0')
                }
            }
            this.setData({result:nar.join('.')})
        }
    }
})

